]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
util: Stop special-casing trySpawnCommandLine() parse errors
authorFlorian Müllner <fmuellner@gnome.org>
Sun, 12 Jan 2025 12:32:39 +0000 (13:32 +0100)
committerFlorian Müllner <fmuellner@gnome.org>
Sun, 12 Jan 2025 23:14:16 +0000 (00:14 +0100)
Unlike for plain JS Errors, the `message` property of GLib.Errors
is read-only, so the intent to replace it with a nicer message
triggers an Error itself.

We could create a new GLib.Error with the changed message instead,
but as it turns out, none of the parse errors contain the technical
prefix we want to strip out, so we can simply drop the special-casing
altogether.

This is also consistent with `spawnCommandLine()`, which never
had special treatment of parse errors.

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/8146
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3593>
(cherry picked from commit 67c5be9c5364cfe9ee2bd00b337582eb1527b939)

js/misc/util.js

index 0dbb97b2ecaf6b89c1cfcc6d45793c9f975ebb70..517ff5784f34d52347ce0e06a49394970606b2f0 100644 (file)
@@ -160,17 +160,7 @@ export function trySpawn(argv) {
  * fails, this will throw an error.
  */
 export function trySpawnCommandLine(commandLine) {
-    let success_, argv;
-
-    try {
-        [success_, argv] = GLib.shell_parse_argv(commandLine);
-    } catch (err) {
-        // Replace "Error invoking GLib.shell_parse_argv: " with
-        // something nicer
-        err.message = err.message.replace(/[^:]*: /, `${_('Could not parse command:')}\n`);
-        throw err;
-    }
-
+    const [, argv] = GLib.shell_parse_argv(commandLine);
     trySpawn(argv);
 }